package com.wxapp.market.api.pojo.vo.coupon;

import com.wxapp.market.api.enums.coupon.CouponDiscountTypeEnum;
import com.wxapp.market.api.enums.coupon.CouponTimeTypeEnum;
import com.wxapp.market.api.enums.coupon.CouponTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author lgl
 * @Description
 * @Datetime 2023/11/23 15:16
 * @Modified By
 */
@Data
public class QBaseVo {
    /**
     * 优惠券名称
     */
    @Schema(description = "优惠券名称")
    private String name;
    /**
     * 优惠券类型
     */
    @Schema(description = "优惠券类型")
    private CouponTypeEnum type;

    /**
     * 优惠券折扣类型
     */
    @Schema(description = "优惠券折扣类型")
    private CouponDiscountTypeEnum discountType;

    /**
     * 优惠券最小使用金额
     */
    @Schema(description = "优惠券最小使用金额")
    private BigDecimal minAmount;

    /**
     * 金额/折扣
     */
    @Schema(description = "金额/折扣")
    private BigDecimal amount;

    /**
     * 优惠券时间类型
     */
    @Schema(description = "优惠券时间类型")
    private CouponTimeTypeEnum timeType;

    /**
     * 优惠券开始时间
     */
    @Schema(description = "优惠券开始时间")
    private LocalDateTime startTime;

    /**
     * 优惠券结束时间
     */
    @Schema(description = "优惠券结束时间")
    private LocalDateTime endTime;

    /**
     * 优惠券有效天数
     */
    @Schema(description = "优惠券有效天数")
    private Integer days;

    /**
     * 优惠券是否有效
     */
    @Schema(description = "优惠券是否有效")
    private Boolean work;

    /**
     * 优惠券描述
     */
    @Schema(description = "优惠券描述")
    private String describes;

    /**
     * 优惠券总数
     */
    @Schema(description = "优惠券总数")
    private Integer totalCount;

    /**
     * 优惠券限领次数
     */
    @Schema(description = "优惠券限领次数")
    private Integer limitNum;
}
